home *** CD-ROM | disk | FTP | other *** search
/ Tux Racer / Tux Racer.iso / program files / Sunspire Studios / Tux Racer / characters / character_init.tcl
Encoding:
Text File  |  2001-08-09  |  1008 b   |  46 lines

  1. #
  2. # Initialize characters
  3. #
  4.  
  5. set curdir [pwd]
  6. cd "$tux_data_dir/characters"
  7.  
  8. foreach character [glob -nocomplain *] {
  9.     if { ![file isdirectory $character] } {
  10.     continue;
  11.     }
  12.  
  13.     if [file exists "$character/character.tcl"] {
  14.     source "$character/character.tcl"
  15.     }
  16. }
  17.  
  18. cd $curdir
  19.  
  20. objset :servers:character -characters {Tux Boris Samuel Neva}
  21.  
  22. namespace eval TRCharacter {
  23.     proc LoadAITargets {plyr plyr_num course difficulty character_name} {
  24.     global tux_data_dir
  25.  
  26.     set targets_dir "$tux_data_dir/courses/$course/ai_targets/$difficulty"
  27.  
  28.     if {![file isdirectory $targets_dir]} {
  29.         tux_warning "no AI targets for difficulty level $difficulty"
  30.         return
  31.     }
  32.  
  33.     set files [lsort [glob -nocomplain -directory $targets_dir {*.tcl}]]
  34.     set numfiles [llength $files]
  35.  
  36.     if { $numfiles == 0 } {
  37.         tux_warning "no AI targets for difficulty level $difficulty"
  38.         return
  39.     }
  40.  
  41.     set filenum [expr $plyr_num % $numfiles]
  42.  
  43.     source [lindex $files $filenum]
  44.     }
  45. }
  46.